package day13;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

/*
* 使用迭代器遍历集合中的元素
*
* */
public class Demo2 {

    public static void main(String[] args) {
        Collection<String> coll = new ArrayList<>();
        coll.add("王者荣耀");
        coll.add("原神启动");
        coll.add("蛋仔派对");

        //使用iterator方法产生一个迭代器对象
        Iterator<String> ite =  coll.iterator();

        /*迭代器中的方法*/
        //hasNext方法:判断指定的集合中是否有下一个元素可以迭代
        //next方法:用来将当前指针指向的元素取出，并将指针向下移动一位

        //在使用迭代器是，指针指向第一元素位置，使用hasNext判断当前的指向位置是否有元素，如果有使用
        //next方法取出，然后指针向下移动一位，继续进行上述操作，直到元素全部取出

        while(ite.hasNext()){

            System.out.println(ite.next());

        }

        //增强for循环(forEach) 一个高级的for循环，专门用来遍历数组和集合，内部原理就是迭代器，
        //在使用增强for循环遍历的时候，不能对集合中的元素进行增删操作
        //for(集合中元素类型 item指向当前集合中的每个元素:遍历目标)
        System.out.println("增强for循环遍历");
        for(String str:coll){
            System.out.println(str);
        }

    }
}
